In today's world, mobile devices are increasingly used to perform functions such as streaming multimedia content, playing high definition online games, enabling video calls, and so forth in addition to basic voice calls. These functions have become an integral part of our daily lives, but each of these and other functions enabled by mobile devices requires network resources. It is therefore important to efficiently and effective manage such communication sessions by optimizing network resources.
For calls involving users across different (access as well as core) networks and involving VoIP network, next generation network (NGN), or IP multimedia subsystem (IMS) network, optimization of network resources for media plane transport may be achieved by optimizing the overall network path between the calling user and called user involved in the communication session while ensuring no adverse impact to the session itself. Optimizing the overall network path is typically achieved by eliminating unnecessary nodes in the network path of the media flow, and by optimizing the transmission length over which the media content is transported between the calling and called users. A technique for optimizing the overall network path is the selection of the appropriate media server for sessions involving media server resources, e.g., conferencing, transcoding, and so forth. For example, in a conference call involving a roaming User A (in visited Network 2) whose home network is Network 1, and 2 users (User B and User C) in their home network (Network 3), selection of a media server in either Network 2 or in Network 3 based on certain pre-defined criteria would eliminate the need for the media transport to pass via Network 1, hence optimizing the overall network path.
Various techniques have been proposed for selection of appropriate media server for sessions involving media server resources. For example, a technique for selection of appropriate media server is proposed at the point when a media server is required to be brought into the session for the first time for a particular feature (e.g., conference) and may include scenarios involving roaming of the served user. Similarly, another technique for selection of optimal media server for conference calls, takes into account the CPU load (utilization level) of the media processors (the media plane of a media server) that are controlled by a multipoint controller unit (the control plane of a media server) in an operator's network. Further, yet another technique for selection of optimal media server takes into account the calling user's location (which is determined by the prefix or the trunk-group identity, in case of a landline number) and in case of unavailability of calling user's location, the technique takes into account the called user's location.
However, the existing techniques for selection of media server are inappropriate for network optimization. First, existing techniques use static selection based on factors like called/calling user's location alone at the start of a session or at the start of usage of media server resources for the session. However, in a practical scenario (e.g., multi-party conference), in order to optimize the network resource usage due to user mobility, dynamic network conditions or changes in the session characteristics, the techniques fail to provide mechanism for appropriate selection of media server while keeping the network resources optimized. Secondly, even for the static selection techniques there are certain issues such as, when a new user joins or leaves a multi-party conference scenario, the selection may not remain appropriate as only the calling and/or called users location are taken into consideration. The issue may get further complicated by activation of lawful interception (LI) for one or more conference users. Third, Only CPU utilization is considered during the media server selection. As a consequence, if congestion-levels in the network segment in which the media server is present or if other system resources of the media server apart from the CPU utilization are affected, it could lead to poor quality of the session or abrupt session termination from a user perspective, and also a further degradation/failure of network resources. Accordingly, the existing techniques fail to provide appropriate selection of the media server in such real-world scenarios.